home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1997 / MacHack 1997.toast / Hacks / Hacks ’96 / Better AD security / Source / AfterDarkGestalt.h next >
Text File  |  1996-06-21  |  2KB  |  73 lines

  1. /*
  2.     AfterDarkGestalt.h
  3.     
  4.     All Gestalt selectors that are defined by After Dark.
  5.     
  6.     Copyright © 1990, 91-94 Berkeley Systems, Inc.
  7.     
  8.     <revision history>
  9.     05/16/94  smz  cleaned up for more public release
  10.  */
  11.  
  12. #ifndef __AFTER_DARK_GESTALT__
  13. #define __AFTER_DARK_GESTALT__
  14.  
  15. /* generic screen saver selectors. */
  16.  
  17. #define gestaltScreenSaverAttr 'SAVR'                /* defined if a screen saver is installed. */
  18.  
  19. /* Gestalt called with 'SAVR' selector returns longword bitmask. Here are the bit numbers: */
  20. enum {
  21.     gestaltSaverTurnedOn = 0,                        /* saver enabled/disabled. */
  22.     gestaltSaverAsleep,                                /* saver currently asleep. */
  23.     gestaltSaverDemoMode,                            /* saver sleeping in demo mode. */
  24.     gestaltSaverPasswordMode,                        /* saver sleeping in password-protected mode. */
  25.     gestaltAppDrawingDisabled                        /* Quickdraw drawing disallowed between module animation frames. */
  26. };
  27.  
  28. #define gestaltScreenSaverControl 'SAVC'            /* allows controlling screen saver. */
  29.  
  30. /* Gestalt called with 'SAVC' selector returns a pointer to a procedure with the following calling conventions: */
  31. enum SaverCommand {
  32.     gestaltSaverWakeUp,
  33.     gestaltSaverSleep,
  34.     
  35.     /* defined in AD 2.0x and later */
  36.     gestaltSaverOn,
  37.     gestaltSaverOff,
  38.     
  39.     /* defined for AD 3.0 and later */
  40.     gestaltSysIQOn,
  41.     gestaltSysIQOff,
  42.     
  43.     gestaltForceShort = 257
  44. };
  45. //typedef short SaverCommand;    /* passes as a short, not a byte */
  46.  
  47. /* 
  48.     This function, called with parameter eSaverWakeUp, causes the screen saver to wake
  49.     up at the next opportunity; called with parameter eSaverSleep, causes the saver
  50.     to sleep at the next opportunity.  The function returns an error if the action
  51.     is impossible for some reason.
  52. */
  53. typedef pascal OSErr (*SaverControlProcPtr) (SaverCommand command);    /* pascal conventions! */
  54.  
  55. /* After Dark specific selectors. */
  56. /* This Gestalt selector returns a longword bitmask containing public information about After Dark. */
  57. #define gestaltAfterDarkAttr 'ADrk'                    /* After Dark states. */
  58.  
  59. enum {
  60.     gestaltSystemIQActive = 0,                        /* SystemIQ™ activity monitor active. */
  61.     gestaltSoundActive                                /* After Dark has allocated a sound channel. */
  62. };
  63.  
  64. /* private After Dark selectors. */
  65.  
  66. typedef pascal short (*GetADFolderProcPtr)(short* vRefNum, long* dirID);
  67.  
  68. #define gestaltAfterDarkGlobals        'aYmm'                /* get After Dark globals. */
  69. #define gestaltAfterDarkExtensions    'ADex'                /* get After Dark extensions. */
  70. #define gestaltAfterDarkFilesFoler    'ADfd'                /* get GetADFolderProcPtr */
  71.  
  72. #endif
  73.